Chemical reaction-type metaheuristic

ABSTRACT

Subject matter disclosed herein relates to various embodiments of a chemical reaction-type metaheuristic. According to an embodiment, solutions to an objective function can be determined by iteratively searching for a minimum energy state of one or more interactions of molecules in a chemical reaction. The molecules in the chemical reaction can be assigned to represent the possible outcomes of the objective function. In a specific embodiment, the interactions of the molecules can modeled as on-wall ineffective collisions, decompositions, inter-molecular ineffective collisions, and synthesis. The type of interaction can affect where the next molecular structure is searched.

CROSS-REFERENCE TO RELATED APPLICATION

The subject application claims the benefit of U.S. ProvisionalApplication Ser. No. 61/093,099, filed Aug. 29, 2008, which isincorporated herein by reference in its entirety.

FIELD

The subject matter of this patent application relates to computationalproblem-solving and, more particularly, to the use of heuristics ormetaheuristics.

BACKGROUND

As is well-known, a variety of computational problems are difficult tosolve using conventional computational techniques. For example, applyingsuch techniques may require large amounts of time, computing power,energy, resources or the like, to achieve a solution. However, while itmay remain difficult to achieve or obtain a solution, nonetheless, itmay be possible to apply computational approaches that provideacceptable results without expending such large amounts of time,computing power, energy, resources or the like. It remains desirable todevelop such approaches for particular types of problems.

BRIEF DESCRIPTION OF THE DRAWINGS

Claimed subject matter is particularly pointed out and distinctlyclaimed in the concluding portion of the specification. However, both asto organization and/or method of operation, together with objects,features, and/or advantages thereof, it may best be understood byreference to the following detailed description when read with theaccompanying drawings in which:

FIG. 1 illustrates an example computational profile of a molecule;

FIG. 2 illustrates four example elementary reactions that may be modeledin accordance with one or more embodiments for a chemical reaction-typemetaheuristic;

FIG. 3 illustrates several graphs of total cost versus number ofevaluations resulting from the application of a particular embodiment ofa chemical reaction-type metaheuristic;

FIG. 4 is a graph illustrating a hypothetical example of applying ametaheuristic;

FIG. 5 is a graph illustrating an example of a potential energy surfaceof a chemical reactive system which may be employed in accordance withone or more embodiments of a chemical-type metaheuristic;

FIG. 6 is a graph illustrating a comparison of performance for differentproblem types from applying different metaheuristics;

FIG. 7 is a flowchart illustrating a process for implementing anembodiment of a chemical reaction-type metaheuristic;

FIG. 8 illustrates an example of neighbors in a two-exchangeneighborhood structure; and

FIG. 9 illustrates two examples of applying a circular shift operator inaccordance with one or more embodiments.

Reference is made in the following detailed description to theaccompanying drawings, which form a part of this patent application,wherein like numerals may designate like parts throughout to indicatecorresponding or analogous elements. It will be appreciated that forsimplicity or clarity of illustration, elements illustrated in thefigures have not necessarily been drawn to scale. Further, it is to beunderstood that other embodiments in addition to those disclosed hereinmay be utilized and structural or logical changes may be made withoutdeparting from the scope of claimed subject matter. Therefore, the scopeof claimed subject matter is defined by the appended claims and theirequivalents; however, the following detailed description is not to betaken in a limiting sense with respect to such claimed subject matter.

DETAILED DESCRIPTION

In the following detailed description, numerous specific details are setforth to provide a thorough understanding of claimed subject matter.However, it will be understood by those skilled in the art that claimedsubject matter may be practiced without these specific details. In otherinstances, methods, apparatuses or systems that would be known by one ofordinary skill have not been described in detail so as not to obscureclaimed subject matter.

Reference throughout this specification to “one embodiment” or “anembodiment” may mean that a particular feature, structure, orcharacteristic described in connection with a particular embodiment maybe included in at least one embodiment of claimed subject matter. Thus,appearances of the phrase “in one embodiment” or “an embodiment” invarious places throughout this specification are not necessarilyintended to refer to the same embodiment or to any one particularembodiment described. Furthermore, it is to be understood thatparticular features, structures, or characteristics described may becombined in various ways in one or more embodiments. In general, ofcourse, these and other issues may vary with the particular context ofusage. Therefore, the particular context of the description or the usageof these terms may provide helpful guidance regarding inferences to bedrawn for that context.

Likewise, the terms, “and,” “and/or,” and “or” as used herein mayinclude a variety of meanings that also is expected to depend at leastin part upon the context in which such terms are used. Typically, “or”as well as “and/or” if used to associate a list, such as A, B or C, isintended to mean A, B, and C, here used in the inclusive sense, as wellas A, B or C, here used in the exclusive sense. In addition, the term“one or more” as used herein may be used to describe any feature,structure, or characteristic in the singular or may be used to describesome combination of features, structures or characteristics. Though, itshould be noted that this is merely an illustrative example and claimedsubject matter is not limited to this example.

Some portions of the detailed description which follow are presented interms of algorithms or symbolic representations of operations on databits or binary digital signals stored within a computing system memory,such as a computer memory. These algorithmic descriptions orrepresentations are examples of techniques used by those of ordinaryskill in the data processing arts to convey the substance of their workto others skilled in the art. An algorithm is here, and generally, isconsidered to be a self-consistent sequence of operations or similarprocessing leading to a desired result. In this context, operations orprocessing involve physical manipulation of physical quantities.Typically, although not necessarily, such quantities may take the formof electrical or magnetic signals capable of being stored, transferred,combined, compared or otherwise manipulated. It has proven convenient attimes, principally for reasons of common usage, to refer to such signalsas bits, data, values, elements, symbols, characters, terms, numbers,numerals or the like. It should be understood, however, that all ofthese and similar terms are to be associated with appropriate physicalquantities and are merely convenient labels. Unless specifically statedotherwise, as apparent from the following discussion, it is appreciatedthat throughout this specification discussions utilizing terms such as“processing,” “computing,” “calculating,” “determining” or the likerefer to actions or processes of a computing platform, such as acomputer or a similar electronic computing device, that manipulates ortransforms data represented as physical electronic or magneticquantities within memories, registers, or other information storagedevices, transmission devices, or display devices of the computingplatform.

Metaheuristics are collections of ideas aiming to address generalcomputational problems. A metaheuristic may usually be in the form of aprocedure framework which instructs computers how to search forsolutions in a solution space for a given computational problem. Ametaheuristic typically comprises several building blocks or controlparameters for fine tuning. These components may be replaced and/or theparameter values may be changed to suit various situations. At timesmetaheuristics may involve randomization in the calculation, and thus,results may vary in different runs of the computation. Typically,solutions may not be guaranteed. Thus, metaheuristics may belong to agroup of approximation processes. Such metaheuristics may be adopted toaddress non-deterministic polynomial-time hard (NP-hard) problemsbecause they may locate ‘good’ solutions relatively efficiently.Metaheuristics may be different from heuristics in that the latter maybe tailor-made for specific problems and they may be able to addresssome problems well but may provide poor solutions to others.

Metaheuristics may apply natural phenomena to address specific problems.Among the most famous ones are Simulated Annealing (SA), Genetic Process(GP), and Ant Colony Process (ACP). SA is inspired by annealing inmetallurgy. Annealing refers to a physical process of increasing crystalsize of a material and reducing defects through a controllable coolingprocedure. By employing the Metropolis process from statisticalmechanics, SA allows ‘downhill’ movements, while ‘uphill’ movements maybe allowed with a probability whose distribution may be controlled atleast in part by a so-called temperature parameter. Therefore, it maynecessarily reach a local minimum and remain there. As temperaturedrops, the ability to move from local minima decreases and the system orprocess converges. GP is based on the idea of natural selection, whichis the phenomenon that organisms with favorable characteristics have ahigher probability to survive and reproduce than those with unfavorabletraits. GP simulates this biological process through producinggenerations of chromosomes, which represent possible solutions. Throughinheritance, selection, and crossover, those chromosomes which arefavored by one or more objective functions, and which satisfy specifiedconstraints, survive and ‘reproduce’ the next generation of chromosomeswith higher quality. Moreover, local optima may be bypassed throughmutation. ACP mimics ecological behavior of ants in finding food. Foodpaths represent potential solutions. If ants discover paths to foodlocations from their colony, they lay down a chemical, called pheromone,along the paths to remind other ants about the food trails. Shorterpaths have more pheromone as more ants shuttle around. It employs theeffect of evaporation of pheromone to reduce risks associated with localoptima. A solution may be obtained by checking the amount of pheromonefor the routes.

According to the No-Free-Lunch (NFL) Theorem, all metaheuristics whichsearch for extremes may have the same, substantially the same, orsimilar performance if averaged over all possible objective functions.By this theorem, no single metaheuristic can always, on the average,surpass the others in performance for all possible problems. Butimproved performance may still be possible in a particular problem.Thus, in this context, “successful metaheuristics” is intended to referto those which may be governed by the NFL Theorem, and which may exhibitbetter performance if applied to some particular types of problems.

As will be discussed in more detail below, a chemical reaction-typemetaheuristic may be utilized to address certain types of computationalproblems. In general, such a chemical reaction-type metaheuristic mayexploit the nature of a chemical reaction to move to lower energystates. In science and engineering, many processes and applicationsinvolve complex trade-offs in obtaining good solutions. They may attimes be formulated as those which cannot be addressed easily. However,if a process or application involves trade-offs in obtaining goodsolutions, a chemical reaction-type metaheuristic may be applicable.

According to the No-Free-Lunch Theorem, all metaheuristics which searchfor extremes exhibit similar performance if averaged over all possibleproblems. So chemical reaction-type metaheuristic may perform comparableto existing metaheuristics if averaged over a large set of problemtypes. However, as may be demonstrated in various simulations, achemical reaction-type metaheuristic may outperform some othermetaheuristics if applied to the Quadratic Assignment Problem, forexample. Therefore, it has the potential to be applied to addresscertain problems that may be otherwise difficult to solve.

Many problems in everyday life involve resource allocation. Examplesinclude the allocation of communication channels in a wireless network,the scheduling of airplanes to terminals at an airport, etc. A chemicalreaction-type metaheuristic may be employed or applied to give aneffective allocation, so as to save or reduce the consumption ofresources.

Some problems may be so hard that, at best, an approximation of asolution, for example may be made with (meta-)heuristic methods. Ametaheuristic, called chemical reaction-type metaheuristic, is disclosedherein which has the potential to be used in addressing these hardproblems. Such a chemical reaction-type metaheuristic may mimic theinteractions of molecules in a chemical reaction to reach a low energystable state. Simulation results show that such a chemical reaction-typemetaheuristic may be very competitive with the few existing successfulmetaheuristics and in some instances may outperform such existingsuccessful metaheuristics. Therefore, such a chemical reaction-typemetaheuristic may provide an approach for addressing such problems,especially those which may not be adequately addressed with the fewgenerally acknowledged approaches.

Trade-offs in obtaining good solutions may be prevalent in many fieldsof science and engineering, ranging from profit in economics to signalinterference in electrical engineering. In daily living, variousproblems may be encountered, such as finding a desirable route from oneplace to another, at reduced cost, and reducing the construction costsof building facilities in a city, while, at the same time, reducingcongestion of human flow among such facilities. As these examplessuggest, without loss of generality, various reduction problems may beconsidered. For example, there may usually be several points in a regionthat may offer reduction, just as there may be many valleys in a giventerrain. However, as illustrated in FIG. 4, for example, one mayglobally provide greater reduction than the others. Thus, the others maybe viewed as a trap during the search for a good solution, because theyappear to provide a solution, whereas a better solution may beavailable.

Many problems may be formulated into this generic form and the existingmethods may be applied to obtain one or more potential solutions withthe aid of a computer. However, in computation complexity theory, thereis a class of problems, namely, nondeterministic polynomial-time hard(NP-hard) problems, in which no known solution may be found inpolynomial time, unless P═NP. In other words, computation efforts growexponentially with problem size. Such problems may normally not besolvable in a reasonable amount of time or computed results of highquality cannot be guaranteed. Often, the formulated problems may be ofhuge dimensions and examining every possible solution, referred to asthe brute-force method, becomes not feasible. It may take several yearsof CPU time to obtain solutions even with a state of the artsupercomputer, for example. Such long computational time often cannot betolerated and solution quality may be sacrificed if the processing timeis limited. For example, if the time savings is significant and thereduction in solution quality not significant, an acceptable compromisemay exist. Thus, approximating processes may be adopted, which mayprovide “good” solutions efficiently, to tackle NP-hard problems, or thelike.

In quantum mechanics and statistical mechanics, chemical reactions andmolecular interactions may be modeled with potential energy surfaces(PES) which may be subject to the Born Oppenheimer separation of nuclearand electronic motion. For example, FIG. 5 depicts potential energy (PE)changes of atomic arrangements in one example of a chemical system. Oneaxis represents PE while the rest correspond to atomic positions andpossible orientations of involved atomic nuclei. PES may be a two-,three-, or multi-dimensional (hyper) surface, depending at least inpart, for example, on the complexity of the chemical system. In anychemical reaction, initial species, e.g. reactants, may change toproducts by formation and destruction of chemical bonds. Beforeformation of products, reactants normally may change to a series ofintermediate species. These chemical changes may be referred to here aselementary transitions. During a transition, chemicals may be formed intransition states. FIG. 5 is a contour graph illustrating a simpleexample of a chemical reaction involving three elementary transitions.There is a rule of thumb from observed behavior that reacting systemstend to seek a minimum of free energy. Chemical reactions tend torelease energy and, thus, products generally have less energy thanreactants. In terms of stability, lower energy substances tend to bemore stable. Therefore, products may be more stable than reactants.

Observations regarding chemical reactions may be applied to computationproblems. For example, tending toward lower energy relates to finding aglobal minimum and the process may be viewed as evolving in a stepwisefashion. Thus, one embodiment of a chemical reaction-type metaheuristicmay be developed by mimicking what happens to molecules in chemicalreactions.

An embodiment of a chemical reaction-type metaheuristic may be arrangedto implement the observation that reactions tend to give products withlower energy on a PES. In general, one or more interactions of moleculesmay be modeled in a chemical reaction to reach a low energy stable statevia a chemical reaction-type metaheuristic. Such modeling may beperformed via a computing platform that manipulates or transformselectronic signals employed to represent physical electronic or magneticquantities, or other physical quantities, within the computingplatform's memories, registers, or other information storage,transmission, or display devices. FIG. 1, for example, provides anassociation, for this particular embodiment, between chemical propertiesof a molecule and computational meaning for this particular embodimentof a metaheuristic. A molecule may be composed of several atoms and maybe represented by atom types, bond lengths, angles, or torsions. Theterm “molecular structure” may be utilized to summarize thesecharacteristics and it may correspond to a computational solution, forthis particular embodiment. A change in molecular structure may betantamount to switching to another solution. According to basicchemistry, a molecule possesses two kinds of energies, potential energyand kinetic energy (KE). The former quantifies the molecular structurein terms of energy and it may be modeled as an objective function valuefor evaluating a possible solution. The latter may be utilized as ameasure of tolerance and may be utilized to obtain a solution withhigher function value, since molecules may change structure. Recall thatthe molecules involved in a reaction attempt to reach the lowestpossible potential state, but blindly seeking more favorable structuresmay result in metastable states, one example being illustrated by alocal minimum, perhaps. KE allows molecules to move to a higherpotential state and hence present a chance of having a more favorablestructure in a future change. Likewise, conservation of energy betweenPE and KE, within a molecule or among molecules, may occur through someelementary reactions or transitions.

In general, to find a potential for energy reduction, different parts ofa PES are explored as much as possible to locate lower point. Butnormally, a PES may be so large that it may not be feasible to examineevery point within a reasonable period of time. Therefore, anintelligent exploration may be made in those parts of a PES where a highpossibility of a lower point may reside. The exploration may beimplemented with collisions amongst molecules, bringing them towardslower possible energy states through several types of elementaryreactions.

For this particular embodiment, there may be two approaches to do thesearch: intensification and diversification, although claimed subjectmatter is not limited in scope to this particular embodiment, of course.For a molecule starting at a point on a PES, intensification exploresthe immediately surrounding area. If a lower energy state cannot befound in this area for some time, diversification results in a jump to arelatively distant area to continue the search. At the same time, asystem may try to re-distribute energies among the molecules byinter-changing energies from one to another in different ways.

One embodiment of a process for such a chemical reaction-typemetaheuristic will be discussed in greater detail below, and isillustrated in FIG. 7. In such an embodiment, a set of reactantmolecules may be initialized by assigning molecular structures randomlyand other properties according to problem type. Thus, molecules may bedistributed over a PES evenly to reduce the chance of missing an area.Reactant molecules may be put in a closed container. In such asituation, molecules collide either with each other or the walls of thecontainer. Collisions under different conditions provoke distinctelementary reactions, each of which may have a different way ofmanipulating energies of the involved molecule(s).

For this particular embodiment, one may employ four types of elementaryreactions: on-wall ineffective collision, decomposition, inter-molecularineffective collision, synthesis. These may be categorized in terms ofmolecularity or extent of change. On-wall ineffective collision anddecomposition may comprise unimolecular reactions triggered if amolecule hits a wall of the container, while inter-molecular ineffectivecollision and synthesis may involve more than one molecule which takesplace if molecules collide with each other. On-wall and intermolecularineffective collisions react much less vigorously than decomposition andsynthesis. Ineffective collisions correspond to those cases in which anew molecular structure results in the neighborhood of the molecule on aPES. Conversely, decomposition and synthesis tend to obtain newmolecular structures which may be further away from their immediateneighborhood on a PES.

Referring to FIG. 2, item (A) illustrates an on-wall ineffectivecollision, where a molecule hits the wall and then bounds back. Item (B)illustrates a decomposition, where a molecule hits on the wall and thendecomposes into two. Item (C) illustrates an inter-molecular ineffectivecollision, where two molecules collide with each other and then bounceaway. Item (D) illustrates a synthesis, where two molecules collide andcombine together. The figure shows both (C) and (D) involving twomolecules but more may be added, depending on the implementation. Withrespect to molecularity, (A) and (B) belong to one class while (C) and(D) belong to another. With respect to extent of change, (A) and (C)belong to one group while (B) and (D) pertain to another.

Collisions trigger different types of elementary reactions depending atleast in part on the underlying conditions. Change of energy in theseevents may be examined. With time, molecules “explore” different partsof a PES and elementary reactions bring them towards lower energystates. If a molecule assumes a new molecular structure with lower PEthan those before, it may be recorded. The process may stop once astopping criterion is reached. The appropriate stopping criteria may bedetermined, depending at least in part on problem type. A solutionobtained in a run of a chemical reaction-type metaheuristic may be thestructure whose PE is lower than the others during the whole course ofthe reaction.

Simulations may be utilized to show that an embodiment of a chemicalreaction-type metaheuristic may be a successful metaheuristic. Forexample, such an embodiment may be applied to the quadratic assignmentproblem (QAP). QAP may be relatively easy to state but may be one of themore difficult NP-hard combinatorial problems. For example, an instanceof problems in which size is larger than 20 are generally consideredintractable. An embodiment of a chemical reaction-type metaheuristic maybe applied to address a QAP type NP-hard problem. For example, anembodiment of a chemical reaction-type metaheuristic may be applied toaddress a real world electronic component placement problem. Such as theelectronic component placement problem described in Miranda, Luna,Mateus and Ferreira, “A performance guarantee heuristic for electroniccomponents placement problems including thermal effects,” Computers &Operations Research, Volume 32, Issue 11, November 2005, Pages2937-2957, and/or the electronic component placement problem describedin Duman and Or, “The quadratic assignment problem in the context of theprinted circuit board assembly process,” Computers & OperationsResearch, Volume 34, Issue 1, January 2007, Pages 163-179. Additionallyor alternatively, an embodiment of a chemical reaction-typemetaheuristic may be applied to address other real world problems. Forexample, an embodiment of a chemical reaction-type metaheuristic may beapplied to address allocating channels in radio network, as described inU.S. Pat. No. 5,778,317; assigning sensor reports in tracking withsensors, as described in U.S. Pat. No. 6,055,523; cell placement forintegrated circuit chip, as described in U.S. Pat. No. 5,796,625; and/orcircuit designing, as described in U.S. Pat. No. 5,897,628; and/or thelike.

QAP tries to reduce total cost from assigning facilities to locations.The facilities may be of different types and the number of facilitiesand the number of locations must be equal, for this particularembodiment. Given the distance between a pair of locations and the humanflow between any two facilities, the cost is, for this particularembodiment, defined as (flow×distance), and the total cost is obtainedby summing the cost of any possible pairs of facilities and locations.Each type of facility is built at a unique location. In other words,duplicate facilities cannot be assigned to distinct locations and eachlocation must have a facility assigned. In fact, this constraint makesthe problem hard to address. Moreover, the number of possible solutionsgrows exponentially with the problem dimensions (here, n). Mostapplications have n larger than 20, which is beyond the size ofcomputational tractability, and thus, a brute-force method may befruitless. Different QAP instances may have different n, flow, anddistance values.

The effectiveness of an embodiment of a chemical reaction-typemetaheuristic may be evaluated using the instance KRA32 taken from a QAPdigital library. KRA32 refers to an instance of QAP that definesdistance and flow information with real-world data originally used toplan Klinikum Regensburg in Germany. A run of simulations may beterminated once the number of evaluations reaches 150,000. The resultsof this simulation using an embodiment of the chemical reaction-typemetaheuristic (labeled as CRO) may be compared with three othermetaheuristics, here, FANT, ISA and TABU (see Table 1). FANT, ISA andTABU refer to metaheuristics derived from Ant Colony Process (ACP),Simulated Annealing (SA), and Taboo search, respectively, and have beenadapted for use in solving QAP. In the simulations discussed below, theparticular embodiment of a chemical reaction-type metaheuristicdescribed above outperformed these particular metaheuristics, in termsof the mean, maximum, and minimum costs obtained. As illustrated in FIG.3, the results may be plotted versus the number of evaluations in theperiod of a simulation run. This embodiment obtains better or equallygood results.

The performance for this particular embodiment may be compared withthose of FANT, ISA and TABU, and recording result after an interval of2,500 function evaluations. In FIG. 3, (A) illustrates a plot of meancost, (B) illustrates a plot of maximum cost, and (C) illustrates a plotof minimum cost. For easier observation, (D), (E) and (F) show moredetailed portions of the graphs on their left, corresponding to thedotted-line boxes.

As discussed above, this particular embodiment may be guided by thetransformation of molecules along a PES towards a more stable state byredistributing energies among molecules and by inter-changing energiesfrom one form to another. As shown by the previous discussion, thisparticular embodiment of a chemical reaction-type metaheuristic may beapplied to address a QAP type NP-hard problem. Thus, this particularembodiment provides the same, substantially the same, or similarperformance as the others on average but outperform other metaheuristicsif matched to the appropriate problem type.

Other embodiments of chemical reaction-type metaheuristics may beprovided, such as, for example through hybridation with othermetaheuristics or through incorporation of so-called greedy approaches.

Besides KRA32, the effectiveness of an embodiment of a chemicalreaction-type metaheuristic may also be evaluated using 23 instancesfrom the same QAP digital library. Referring to Table 1 below,simulation results may be compared with three other metaheuristics.Under each metaheuristic, the three columns show “Min,”, “Max,” and“Mean” representing the best case, the worst case, and the averagerespectively, in 50 runs. Results from different runs vary fromrandomization in the calculations. Figures in brackets indicate the bestmetaheuristic result. On average, the chemical reaction-typemetaheuristic performs best.

TABLE 1 Function Problem evaluation FANT ISA Instance size Global min.limit Min. Max. Mean Min. nug21 21 2438 150 000 (2438) 2464 2444.44(2438) nug22 22 3596 150 000 (3596) 3632 3599.80 (3596) nug24 24 3488150 000 (3488) 3546 3500.40 (3488) nug25 25 3744 150 000 (3744) 37723750.36 (3744) nug27 27 5234 150 000 (5234) 5324 (5249.52) (5234) nug2828 5166 150 000 (5166) 5266 5203.24 (5166) nug30 30 6124 150 000 61286210 6158.56 (6124) kra30a 30 88 900   150 000 (88 900)   93 200   (90601.80)   90 160   kra30b 30 91 420   150 000 (91 420)   93 010   92031.00   91 590   kra32 32 88 700   150 000 (88 700)   91 490   90373.80   (88 700)   tai10b 10 1 183 760     50 000 (1 183 760)    (1 183760)     (1 183 760.00)    (1 183 760)    tai12b 12 39 464 925     50000 (39 464 925)    (39 464 925)    (39 464 925.00)    (39 464 925)   tai15b 15 51 765 268     50 000 (51 765 268)    (51 855 477)    (51 774385.84)    (51 765 268)    esc32a 32  130 150 000  (130)  146  138.60 134 esc32b 32  168 150 000  (168)  (192)  178.88  188 esc32c 32  642150 000  (642)  (642)  (642.00)  (642) esc32d 32  200 150 000  (200) (200)  (200.00)  (200) esc32e 32   2 150 000   (2)   (2)   (2.00)   (2)esc32g 32   6 150 000   (6)   (6)   (6.00)   (6) esc32h 32  438 150 000 (438)  440  438.12  (438) tai64c 64 1 855 928    150 000 (1 855 928)   (1 857 646)    (1 856 255.96)    (1 855 928)    wil50 50 48 816   150000 48 964   49 254   49 098.72   (48 844)   wil100 100 273 038   150000 274 800   (275 980)   275 436.48   (273 816)   ISA TABU CRO InstanceMax. Mean Min. Max. Mean Min. nug21 2462 2445.72 (2438) 2484 2452.28(2438) nug22 3644 3607.84 (3596) 3696 3618.92 (3596) nug24 (3526)3498.40 (3488) 3554 3503.20 (3488) nug25 3768 (3746.96) (3744) 37883751.76 (3744) nug27 5314 5259.04 (5234) 5382 5285.56 (5234) nug28 5278(5201.28) (5166) 5282 5219.76 (5166) nug30 6214 (6146.96) (6124) 62346175.28 6128 kra30a 94 340   91 664.20   (88 900)   95 280   92428.40 (88 900)   kra30b 94 990   92 752     91 490   96 050   93029.60  91 490  kra32 93 060   90 664.60   (88 700)   94 430   91714.60  (88 700)  tai10b 1 213 671    1 184 925.80    (1 183 760)     (1 183 760)     (1183 760.00)     (1 183 760)     tai12b 45 097 713    41 801 386.02   (39 464 925)     40 063 583     39 526 972.08     (3 9464 925)    tai15b 52 035 184    51 814 064.70    (51 765 268)     51 944 836     51822 408.02     (51765268)   esc32a  150  140.60  134  162  145.80  (130)esc32b  224  208.96  168  224  196.32  (168) esc32c  (642)  (642.00) (642)  646  642.24  (642) esc32d  208  202.44  (200)  216  205.32 (200) esc32e   (2)   (2.00)   (2)   (2)   (2.00)   (2) esc32g   (6)  (6.00)   (6)   (6)   (6.00)   (6) esc32h  442  439.80  440  478 453.00  (438) tai64c 1 857 660    1 859 213.60    (1 855 928)     1 883516     1 863 245.04     (1 855 928)     wil50 49 296   (48 937.12)   48996   49 828   49 343.88   48 918   wil100 276 034   (274 683.32)   280634   283 190   281 779.56   274 618   CRO Instance Max. MeanComputational time (s) nug21 (2456) (2443.64) 1.046 nug22 (3606)(3597.80) 1.109 nug24 (3526) (3494.88) 1.265 nug25 (3760) 3749.68 1.343nug27 (5298) 5259.36 1.500 nug28 (5238) 5202.52 1.610 nug30 (6206)6170.12 1.781 kra30a (91 800)   90 664.20   1.797 kra30b (92 840)   (92022.80)   1.797 kra32 (91 260)   (90 190.80)   1.984 tai10b 1 187 126    1 184 029.28     0.407 tai12b 40 063 573     3 911 175.94     0.485tai15b 52 205 386     52 035 537.10     0.640 esc32a  (142)  (136.84)2.000 esc32b  (192)  (175.36) 1.985 esc32c  (642)  (642.00) 2.016 esc32d (200)  (200.00) 2.015 esc32e   (2)   (2.00) 2.031 esc32g   (6)   (6.00)2.016 esc32h  (438)  (438.00) 2.000 tai64c 1 860 348     1 856 796.04    6.984 wil50 (49 214)   49 071.12   4.407 wil100 276 278   275 291.16  15.985

There may be three stages in an embodiment of a chemical reaction-typemetaheuristic: initialization, iteration and final stage. FIG. 7 showsan example chemical reaction-type metaheuristic in accordance with oneor more embodiments, although the scope of claimed subject matter is notlimited in this respect. Additionally, although the embodiment chemicalreaction-type metaheuristic, as shown in FIG. 7, comprises oneparticular order, this order does not necessarily limit claimed subjectmatter to any particular order. Likewise, intervening or additionalblocks not shown in FIG. 7 may be employed or blocks shown in FIG. 7 maybe eliminated, without departing from the scope of claimed subjectmatter. The embodiment of a chemical reaction-type metaheuristic, asshown in FIG. 7 may in alternative embodiments be implemented insoftware, hardware, or firmware, and may comprise discrete operations.

In initialization, the solution space and some functions may be defined,and values may be assigned to several variables and control parameters.Such an embodiment may comprise a population-based metaheuristic and mayhandle more than one solution from an iteration. But the number ofsolutions held in memory may be subject to change, depending, forexample, at least in part on the effects of decomposition and synthesis.Table 2, listed below, shows an example of symbols used in thisparticular embodiment of a chemical reaction-type metaheuristic. First,Pop may be produced by generating PopSize number of solutions randomlyin the solution space. This may increase the scope of searching overObjFunc( ). In an iteration stage, a number of iterations may beperformed. In one iteration, a collision may be chosen. First, adecision may be made whether it is a unimolecular or an intermolecularcollision. To do this, a random number p may be generated, in theinterval of [0, 1]. If p is larger than MoleColl, it may result in anevent of unimolecular collision. Otherwise, an inter-molecular collisionmay take place. Also, a unimolecular collision may be present if thereremains one molecule in Pop. A suitable number of molecules may berandomly selected from Pop, for example, according to a just-decidedcollision type. Molecules involved in a collision may depend at least inpart on their locations in the container. However, this observation maybe ignored in this embodiment for simplicity. Next, the criteria ofdecomposition or synthesis may be examined to determine type ofcollision. A point found may be checked for reduction in energy andrecorded. This iteration stage may repeat until a stopping criterion isreached. For example, a stopping criterion may be defined based at leastin part on the amount of CPU time used, the number of iterationsperformed, an objective function value less than a predefined threshold,the number of iterations performed without an improvement or any otherappropriate criteria. In a final state, the solution with the lowestvalue found over ObjFunc( ) may be provided.

Table 3 shows values assigned to control parameters of this embodimentof a chemical reaction-type metaheuristic used in the simulation. Apossible solution may be in the form of permutation of problemdimensions, such as if QAP is being solved, for example. FIG. 8 showstwo possible solutions if problem dimension is six. As illustrated byFIG. 8, a two-exchange neighborhood structure may be adopted since theremay be no natural neighborhood structure defined for permutations, ascompared with continuous functions. Suppose a current solution is {acuteover (ω)} and an attempt is made to perform a move to {acute over (ω)}′in its neighborhood. In an on-wall ineffective collision, a move may beallowed ifPE_(ω)+KE_(ω)≧PE_(ω′)  (1)where PE_(ω′) may be calculated by putting ω′ into ObjFunc( ). We getKE_(ω′)=(PE_(ω)+KE_(ω)−PE_(ω′))×q where q ε[KELossRate,1], where (1−q)represents a fraction of KE lost to the environment from hitting a wall.Lost energy may be stored up in an energy pool. If inequality (1) doesnot hold, a move may be prohibited.

Similarly in inter-molecular ineffective collision, two new solutionsω₁′ and ω₂′ may be obtained from the neighborhoods of ω₁ and ω₂respectively. A change may be accepted if:PE_(ω1)+PE_(ω2)+KE_(ω1)+KE_(ω2)≧PE_(ω1)+PE_(ω2)   (2)Let Buffer=(PE_(ω1)+PE_(ω2)+KE_(ω1)+KE_(ω2))−(PE_(ω1)+PE_(ω2)), thenKE_(ω1′)=Buffer×k and KE_(ω2′)=Buffer×(1−k) may be obtained, where k maybe a random number generated from the interval [0, 1]. Likewise, ω₁ andω₂ may not change to ω_(1′) and ω_(2′) respectively if inequality (2)fails.

In decomposition, two solutions ω₁′ and ω₂′ may be obtained from ω. Acircular shift operator may be adopted, such as illustrated at FIG. 9,for example, to generate new solutions, although claimed subject matteris not limited in scope to this particular approach. Decomposition maybe triggered if a selected molecule has stayed in a stable state for acertain period of time. For example, if (number of hits−minimum hitnumber)>α, a molecule has not moved to a lower energy state for acertain time in terms of number of hits α. Stored energy from energypool accumulation due to on wall ineffective collisions may compensateif total energy of an original molecule with solution ω is not enough tosupport a change.

In synthesis, an attempt may be made to generate a new solution ω′ fromtwo existing solutions, ω₁ and ω₂, by using a distance-preservingcrossover operator. It may be triggered if both molecules haveinsufficient KEs. For example, if KE₁≦β and KE₂≦β, where β defines theleast amount of KE a molecule may possess. ω′ may be accepted ifPE_(ω1)+PE_(ω2)+KE_(ω1)+KE_(ω2)≧PE_(ω′)  (3)We get KE_(ω′)=PE_(ω1)+PE_(ω2)+KE_(ω1)+KE_(ω2)−PE_(ω1)+PE_(ω′). Thus, ω₁and ω₂ may be retained instead of ω₁′ if inequality (3) does not hold.Inequalities (1-3) reflect conservation of energy. Simulated versions ofthese four elementary reactions may be summarized in terms ofintensification and diversification in Table 4, as illustrated below.

Values of parameters, neighborhood structure, conditions for triggeringdecomposition and synthesis, circular shift and distance-preservingcrossover operators may in alternate embodiments be tuned to matchproblem type.

The quadratic assignment problem (QAP) may be defined, as describedbelow. Consider a problem of size n. There may be n facilities to beassigned to n locations. f_(ij) may be defined as the flow betweenfacilities i and j, and d_(kl) as the distance between locations k andl. An objective function and constraints may be written as follows:

$\min{\sum\limits_{i,{j = 1}}^{n}{\sum\limits_{k,{l = 1}}^{n}{f_{ij}d_{kl}x_{ik}x_{jl}}}}$subject  to  $\begin{matrix}{{\sum\limits_{i = 1}^{n}x_{ij}} = 1} & {{1 \leq j \leq n},}\end{matrix}$ $\begin{matrix}{{\sum\limits_{j = 1}^{n}x_{ij}} = 1} & {{1 \leq i \leq n},}\end{matrix}$ $\begin{matrix}{x_{ij} \in \left\{ {0,1} \right\}} & {{1 \leq i},{j \leq n}}\end{matrix}$

If the constraints are examined more carefully, it may be found thatpossible solutions may be in the form of permutation of n elements.Positions and values of the permutation may correspond to locations andfacilities, respectively. Then the objective function value may bedetermined by summing the products of flow and distance of possiblepairs in the permutation. Consider an instance of the problem with nequal four. One possible solution is [2, 4, 3, 1], with facility 2assigned to location 1, facility 4 to location 2, etc. This solution maybe evaluated by computing:f ₂₂ d ₁₁ +f ₂₄ d ₁₂ +f ₂₃ d ₁₃ +f ₂₁ d ₁₄+f ₄₂ d ₂₁ +f ₄₄ d ₂₂ +f ₄₃ d ₂₃ +f ₄₁ d ₂₄+f ₃₂ d ₃₁ +f ₃₄ d ₃₂ +f ₃₃ d ₃₃ +f ₃₁ d ₃₄+f ₁₂ d ₄₁ +f ₁₄ d ₄₂ +f ₁₃ d ₄₃ +f ₁₁ d ₄₄.

Referring to FIG. 5, the z-axis represents potential energy difference.It characterizes how energy changes during a reaction. The x- and y-axescapture molecular structures of chemical substances. The solid linegives reaction pathway from reactants to products, via severaltransition states and an intermediate species.

FIG. 6 illustrates that metaheuristics have similar performance on theaverage. However, one may have superior performance for some types ofproblems but becomes inferior on other problems. At point (a),metaheuristic 1 outperforms metaheuristic 2, but at point (b),metaheuristic 2 outperforms metaheuristic 1.

FIG. 7 is a flowchart illustrating a particular metaheuristicembodiment. START and END indicate beginning and termination,respectively, of a run for this particular embodiment. A run may startwith initialization, perform a certain number of iterations, andterminate at a final stage.

FIG. 8 provides an example of neighbors in a two-exchange neighborhoodstructure. The 1st permutation means the 1st facility may be assigned tolocation 1, the 2nd facility to location 2 and so forth. A neighbor maybe defined by exchanging values of any two positions. The 2ndpermutation gives a neighbor of the 1st. In this representation, the 5thfacility may be assigned to location 2 and the 2^(nd) facility tolocation 5.

FIG. 9 illustrates two examples of a circular shift operator. A newsolution may be obtained by generating an integer in the range of [−n,n] where n is the size of the permutation, indicating how manytransitions may be utilized to shift from the original one. Negative andpositive values mean shifting to the left and right, respectively. Theleft permutation may be obtained by shifting to the left for onetransition, while the right one may be obtained by shifting to the rightfor two transitions.

Referring to Table 2 below, variables and parameters used in thisembodiment of a chemical reaction-type metaheuristic are provided. Thesecond column shows symbols of functions, variables and parameters. Thethird and fourth columns give computational and chemical meanings,respectively.

TABLE 2 Type Symbol Algorithmic meaning Chemical meaning FunctionObjFunc( ) Objective function Function defining PES Neighbor( ) Neighborcandidate generator Neighborhood structure on PES Variable Nvars Numberof variables representing a Total number of characteristics solution;dimensions of the problem of a molecule Pop Set of solutions; 2-D matrixwhere Set of molecules each row carries the values of a solution PEVector of objective function values; Potential energy of all the PE =ObjFunc(Pop) molecules KE Vector of number measuring the Kinetic energyof all the tolerance of the solutions to have molecules worse objectivefunction values afterwards Parameter PopSize Number of solutionsmaintained; Number of molecules in the number of rows in Pop containerKELossRate Percentage upper limit of reduction of Percentage upper limitof KE KE in on-wall ineffective collisions lost to the environment inon- wall ineffective collisions MoleColl Fraction of all elementaryreactions Same as the algorithmic corresponding to inter-molecularmeaning reactions InitialKE Initial value assigned to each element KE ofthe initial set of molecules of KE in the initialization stage

Referring to Table 3 below, values may be assigned to controlparameters. For example, α and β refer to thresholds defined forconditions for decomposition and synthesis, respectively.

TABLE 3 Parameter Value PopSize 25   KELossRate 0.8 MoleColl 0.2InitialKE 1 000 000       α^(a) 1300    β^(a) 10 000     

Referring to Table 4 below, intensification and diversification of fourelementary reactions is illustrated. More ticks indicate strongereffects. Note that a distance-preserving crossover operator used insynthesis has some effect of intensification. The extent ofintensification and diversification may vary, depending at least inpart, for example, on the particular implementation of the elementaryreactions in the simulation.

TABLE 4 Elementary reactions Intensification Diversification On-wallineffective collision ✓✓ ✓ Decomposition ✓✓ Intermolecular collision ✓✓✓ Synthesis ✓ ✓✓

It will, of course, be understood that, although particular embodimentshave just been described, claimed subject matter is not limited in scopeto a particular embodiment or implementation. For example, oneembodiment may be in hardware, such as implemented to operate on adevice or combination of devices, for example, whereas anotherembodiment may be in software. Likewise, an embodiment may beimplemented in firmware or as any combination of hardware, software, orfirmware, for example. Likewise, although claimed subject matter is notlimited in scope in this respect, one embodiment may comprise one ormore articles, such as a storage medium or storage media. This storagemedia, such as, one or more CD-ROMs or disks, for example, may havestored thereon instructions, that if executed by a system, such as acomputer system, computing platform, or other system, for example, mayenable an embodiment in accordance with claimed subject matter to beexecuted, such as one of the embodiments previously described, forexample. As one potential example, a computing platform may include: oneor more processing units or processors; one or more input/outputdevices, such as a display, a keyboard, or a mouse; one or morememories, such as static random access memory, dynamic random accessmemory, flash memory or a hard drive, although, again, claimed subjectmatter is not limited in scope to this example.

Some portions of the detailed description are presented in terms ofalgorithms or symbolic representations of operations on data bits orbinary digital signals stored within a computing system memory, such asa computer memory. These algorithmic descriptions or representations areexamples of techniques used by those of ordinary skill in the dataprocessing arts to convey the substance of their work to others skilledin the art. An algorithm is here, and generally, is considered to be aself-consistent sequence of operations or similar processing leading toa desired result. In this context, operations or processing involvephysical manipulation of physical quantities. Typically, although notnecessarily, such quantities may take the form of electrical or magneticsignals capable of being stored, transferred, combined, compared orotherwise manipulated. It has proven convenient at times, principallyfor reasons of common usage, to refer to such signals as bits, data,values, elements, symbols, characters, terms, numbers, numerals or thelike. It should be understood, however, that all of these and similarterms are to be associated with appropriate physical quantities and aremerely convenient labels. Unless specifically stated otherwise, asapparent from the following discussion, it is appreciated thatthroughout this specification discussions utilizing terms such as“processing,” “computing,” “calculating,” “determining” or the likerefer to actions or processes of a computing platform, such as acomputer or a similar electronic computing device, that manipulates ortransforms data represented as physical electronic or magneticquantities within memories, registers, or other information storagedevices, transmission devices, or display devices of the computingplatform.

In one implementation, one or more interactions of molecules may bemodeled in a chemical reaction to reach a low energy stable state via achemical reaction-type metaheuristic. Such modeling may be performed viaa computing platform that manipulates or transforms electronic signalsemployed to represent physical electronic or magnetic quantities, orother physical quantities, within the computing platform's memories,registers, or other information storage, transmission, or displaydevices.

For example, a computing platform may be adapted to execute instructionsso that one or more interactions of molecules in a chemical reaction maybe represented within such a computing platform by digital electronicsignals. Such interactions may be represented within such a computingplatform by so as to reach a low energy stable state via digitalelectronic signal implementation of a chemical reaction-typemetaheuristic. Additionally or alternatively, such a computing platformmay be adapted to implement elementary reactions. For example, one ormore of the following types of elementary reactions may be implemented:on-wall ineffective collision; decomposition; inter-molecularineffective collision; or synthesis. Such elementary reactions may beimplemented so that one or more interactions of molecules in a chemicalreaction represented within such a computing platform by digitalelectronic signals may reach a low energy stable state viadigital-electronic signal implementation of such a chemicalreaction-type metaheuristic. Additionally or alternatively, such acomputing platform may be adapted to utilize digital electronic signalsto process one or more outcomes for a non-deterministic polynomial-timehard (NP-hard) problem, and/or the like.

Similarly, a computing platform may be adapted to perform digitalelectronic signal implementation of a chemical reaction-typemetaheuristic. In such a digital electronic signal implementation,digital electronic signals may represent one or more interactions ofmolecules in a chemical reaction to reach a low energy stable state.Such a computing platform may also be adapted to apply a digitalelectronic process to obtain one or more outcomes for an objectivefunction subject to constraints via such a digital electronic signalimplementation of a chemical reaction-type metaheuristic. Additionallyor alternatively, a computing platform may be adapted to apply a digitalelectronic process to obtain one or more outcomes for an objectivefunction subject to constraints that includes an otherwisecomputationally intractable problem. In such a case, such an objectivefunction that includes an otherwise computationally intractable problemmay be processed via a digital electronic signal implementation of achemical reaction-type metaheuristic to obtain one or more outcomes.Additionally or alternatively, a computing platform may be adapted toapply a digital electronic process to obtain one or more outcomes for anobjective function subject to constraints, where such outcomes mayinclude improved outcomes relative to those obtainable from alternativemetaheuristics. For example, such outcomes may include improved outcomesrelative to those obtainable from, instead, implementing at least one ofthe following metaheuristics: Simulated Annealing (SA), Genetic Process(GP), or Ant Colony Process (ACP), and/or the like.

In the preceding description, various aspects of claimed subject matterhave been described. For purposes of explanation, specific numbers,systems or configurations were set forth to provide a thoroughunderstanding of claimed subject matter. However, it should be apparentto one skilled in the art having the benefit of this disclosure thatclaimed subject matter may be practiced without these specific details.In other instances, features that would be understood by one of ordinaryskill were omitted or simplified so as not to obscure claimed subjectmatter. While certain features have been illustrated or describedherein, many modifications, substitutions, changes or equivalents willnow occur to those skilled in the art. It is, therefore, to beunderstood that the appended claims are intended to cover all suchmodifications or changes as fall within the true spirit of claimedsubject matter.

What is claimed is:
 1. An apparatus comprising: one or more processorsconfigured to: obtain an objective function that is subject toconstraints and a number of possible solutions to the objectivefunction; assign molecular structures and chemical reaction parametersto a plurality of reactant molecules, wherein the molecular structurescomprise a kinetic energy value, a potential energy value, an atomicposition, and an orientation; model a plurality of reactions involvingone or more of the molecular structures, wherein the plurality ofreactions comprise at least one of an on-wall ineffective collision, adecomposition, an inter-molecular ineffective collision, and asynthesis, wherein to select each reaction in the plurality of reactionsone or more processors configured to: determine a random number;determine if the random number is less than an inter-molecular reactionparameter; model an on-wall ineffective collision of a molecularstructure; determine if a sum of the potential energy value and kineticenergy value of the molecular structure is greater than a new potentialenergy value of the molecular structure after the on-wall ineffectivecollision based upon a determination that the random number is less thanthe inter-molecular reaction parameter; allow the on-wall ineffectivecollision based upon a determination that the sum is greater than thenew potential energy; determine the molecular structure has stayed in astable state for at least a predetermined period of time based upon thedetermination that the sum is less than the new potential energy value:decompose the molecular structure into two or more molecular structuresbased upon the determination that the molecular structure has stayed inthe stable state for at least the predetermined period of time; andmodel an inter-molecular collision based upon a determination that therandom number is greater than the inter-molecular reaction parameter,wherein the inter-molecular collision is a synthesis or aninter-molecular ineffective collision; determine, after each of theplurality of reactions, an energy value of the molecular structuresbased upon the potential energy values and kinetic energy values of themolecular structures; store the molecular structures when the energyvalue is less than a previously stored energy value; determine astopping criteria is met; and determine the solution for the objectivefunction as the stored molecular structures that has the lowest energyvalue that corresponds to the global minimum.
 2. The apparatus of claim1, wherein the objective function comprises a non-deterministicpolynomial-time hard (NP-hard) problem.
 3. A method comprising:obtaining an objective function that is subject to constraints and anumber of possible solutions to the objective function; assigningmolecular structures and chemical reaction parameters to a plurality ofreactant molecules, wherein the molecular structures comprise a kineticenergy value, a potential energy value, an atomic position, and anorientation; modeling, using a processor, a plurality of reactionsinvolving one or more of the molecular structures, wherein the pluralityof reactions comprise at least one of an on-wall ineffective collision,a decomposition, an inter-molecular ineffective collision, and asynthesis, wherein selecting, using the processor, each reaction in theplurality of reactions comprises: determining a random number;determining if the random number is less than an inter-molecularreaction parameter; modeling an on-wall ineffective collision of amolecular structure; determining if a sum of the potential energy valueand kinetic energy value of the molecular structure is greater than anew potential energy value of the molecular structure after the on-wallineffective collision based upon a determination that the random numberis less than the inter-molecular reaction parameter; allowing theon-wall ineffective collision based upon a determination that the sum isgreater than the new potential energy; determining the molecularstructure has stayed in a stable state for at least a predeterminedperiod of time based upon the determination that the sum is less thanthe new potential energy value; decomposing the molecular structure intotwo or more molecular structures based upon the determination that themolecular structure has stayed in the stable state for at least thepredetermined period of time; and modeling an inter-molecular collisionbased upon a determination that the random number is greater than theinter-molecular reaction parameter, wherein the inter-molecularcollision is a synthesis or an inter-molecular ineffective collision;determining, after each of the plurality of reactions, an energy valueof the molecular structures based upon the potential energy values andkinetic energy values of the molecular structures; storing the molecularstructures when the energy value is less than a previously stored energyvalue; determining a stopping criteria is met; and determining thesolution for the objective function as the stored molecular structuresthat has the lowest energy value that corresponds to the global minimum.4. The method of claim 3, wherein the objective function comprises anon-deterministic polynomial-time hard (NP-hard) problem.
 5. Anon-transitory computer-readable medium having instructions storedthereon, the instructions comprising: instructions to obtain anobjective function that is subject to constraints and a number ofpossible solutions to the objective function; assign molecularstructures and chemical reaction parameters to a plurality of reactantmolecules, wherein the molecular structures comprise a kinetic energyvalue, a potential energy value, an atomic position, and an orientation;instructions to model a plurality of reactions involving one or more ofthe molecular structures, wherein the plurality of reactions comprise atleast one of an on-wall ineffective collision, a decomposition, aninter-molecular ineffective collision, and a synthesis, wherein toselect each reaction in the plurality of reactions comprises:instructions to determine a random number; instructions to determine ifthe random number is less than an inter-molecular reaction parameter;instructions to model an on-wall ineffective collision of a molecularstructure; instructions to determine if a sum of the potential energyvalue and kinetic energy value of the molecular structure is greaterthan a new potential energy value of the molecular structure after theon-wall ineffective collision based upon a determination that the randomnumber is less than the inter-molecular reaction parameter; instructionsto allow the on-wall ineffective collision based upon a determinationthat the sum is greater than the new potential energy; instructions todetermine the molecular structure has stayed in a stable state for atleast a predetermined period of time based upon the determination thatthe sum is less than the new potential energy value; instructions todecompose the molecular structure into two or more molecular structuresbased upon the determination that the molecular structure has stayed inthe stable state for at least the predetermined period of time; andinstructions to model an inter-molecular collision based upon adetermination that the random number is greater than the inter-molecularreaction parameter, wherein the inter-molecular collision is a synthesisor an inter-molecular ineffective collision; instructions to determine,after each of the plurality of reactions, an energy value of themolecular structures based upon the potential energy values and kineticenergy values of the molecular structures; instructions to store themolecular structures when the energy value is less than a previouslystored energy value; instructions to determine a stopping criteria ismet; and instructions to determine the solution for the objectivefunction as the stored molecular structures that has the lowest energyvalue that corresponds to the global minimum.
 6. The non-transitorycomputer-readable medium of claim 5, wherein the objective functioncomprises a non-deterministic polynomial-time hard (NP-hard) problem. 7.The apparatus of claim 1, wherein the objective function defines apotential energy surface of a chemical system comprising the reactantmolecules.
 8. The apparatus of claim 7, wherein the reactions representdifferent parts of the potential energy surface.
 9. The method of claim3, wherein the objective function defines a potential energy surface ofa chemical system comprising the reactant molecules.
 10. The method ofclaim 9, wherein the reactions represent different parts of thepotential energy surface.
 11. The non-transitory computer-readablemedium of claim 5, wherein the reactions represent different parts ofthe potential energy surface.
 12. The non-transitory computer-readablemedium of claim 11, wherein the reactions represent different parts ofthe potential energy surface.
 13. The apparatus of claim 1, wherein tomodel the inter-molecular collision the one or more processors areconfigured to: determine a sum of potential energy values and kineticenergy values of two or more molecular structures; model a synthesis ofthe two or more molecular structures to form a new molecular structure;determine the sum of potential energy values and kinetic energy valuesis greater than a new potential energy value of the new molecularstructure; and allow the synthesis based upon the determination that thesum of potential energy values and kinetic energy values is greater thanthe new potential energy value of the new molecular structure.
 14. Theapparatus of claim 1, wherein to model the inter-molecular collision theone or more processors are configured to: determine a sum of potentialenergy values and kinetic energy values of two or more molecularstructures; model an inter-molecular ineffective collision between thetwo or more molecular structures; determine the sum of potential energyvalues and kinetic energy values is greater than a sum of the potentialenergy values of the two or more molecular structures after theinter-molecular ineffective collision; and allow the inter-molecularineffective collision based upon the determination that the sum ofpotential energy values and kinetic energy values is greater than a sumof the potential energy values of the two or more molecular structuresafter the inter-molecular ineffective collision.
 15. The method of claim3, wherein the modeling the inter-molecular comprises: determining a sumof potential energy values and kinetic energy values of two or moremolecular structures; modeling a synthesis of the two or more molecularstructures to form a new molecular structure; determining the sum ofpotential energy values and kinetic energy values is greater than a newpotential energy value of the new molecular structure; and allowing thesynthesis based upon the determination that the sum of potential energyvalues and kinetic energy values is greater than the new potentialenergy value of the new molecular structure.
 16. The method of claim 3,wherein the modeling the inter-molecular collision comprises:determining a sum of potential energy values and kinetic energy valuesof two or more molecular structures; modeling an inter-molecularineffective collision between the two or more molecular structures;determining the sum of potential energy values and kinetic energy valuesis greater than a sum of the potential energy values of the two or moremolecular structures after the inter-molecular ineffective collision;and allowing the inter-molecular ineffective collision based upon thedetermination that the sum of potential energy values and kinetic energyvalues is greater than a sum of the potential energy values of the twoor more molecular structures after the inter-molecular ineffectivecollision.
 17. The non-transitory computer-readable medium of claim 5,wherein the instructions to model the inter-molecular collisioncomprise: instructions to determine a sum of potential energy values andkinetic energy values of two or more molecular structures; instructionsto model a synthesis of the two or more molecular structures to form anew molecular structure; instructions to determine the sum of potentialenergy values and kinetic energy values is greater than a new potentialenergy value of the new molecular structure; and instructions to allowthe synthesis based upon the determination that the sum of potentialenergy values and kinetic energy values is greater than the newpotential energy value of the new molecular structure.
 18. Thenon-transitory computer-readable medium of claim 5, wherein theinstructions to model the inter-molecular collision comprise:instructions to determine a sum of potential energy values and kineticenergy values of two or more molecular structures; instructions to modelan inter-molecular ineffective collision between the two or moremolecular structures; instructions to determine the sum of potentialenergy values and kinetic energy values is greater than a sum of thepotential energy values of the two or more molecular structures afterthe inter-molecular ineffective collision; and instructions to allow theinter-molecular ineffective collision based upon the determination thatthe sum of potential energy values and kinetic energy values is greaterthan a sum of the potential energy values of the two or more molecularstructures after the inter-molecular ineffective collision.